/*
 * @LastEditors: yuSeen
 * @LastEditTime: 2022-01-08 10:48:52
 */

export interface IUserState {
  userInfo: {
    nickname: string;
    avatarUrl: string;
  };
  token: string;
}

export interface IUserComputed {
  isLogin: (newState: IUserState) => boolean;
}

export interface IUserReducer {
  setToken: (token: string) => string;
  updateUserInfo: () => any;
}

export interface IUserStore {
  state: IUserState;
  computed: IUserComputed;
  reducer: IUserReducer;
}
